In [2]:
# Embeded.js d3 and crossfilter.js in Jupyter Notebook
In [3]:
## Import data
In [4]:
# Read in data
import pandas as pd
f = open("/home/dyfrigmon/Data/FlightData/flights-3m.json")
text=f.readlines()
f.close()
In [5]:
# Get column names
columnNames = text.pop(0)
columnNames = columnNames.replace('\n','').split(',')
print columnNames
['date', 'delay', 'distance', 'origin', 'destination']
In [6]:
# Create DataFrame
df=pd.DataFrame(text)
splitFunc = lambda x: pd.Series([i for i in (x.replace('\n','').split(','))])
df = df[0].apply(splitFunc)
df.columns = columnNames
In [7]:
df.tail()
Out[7]:
date delay distance origin destination
231078 03312210 -7 423 OMA MDW
231079 03312230 -8 303 HOU MSY
231080 03312237 106 443 BNA RDU
231081 03312248 125 880 STL MCO
231082 03312257 29 303 MSY HOU
In [8]:
# Starnge Date Format - think the year has been choped off
In [9]:
from datetime import datetime
In [10]:
dateConvFunc = lambda x: datetime(2001,int(x[0:2]),int(x[2:4]),int(x[4:6]),int(x[6:8]))
df['date']=df['date'].apply(dateConvFunc)
In [11]:
df['index'] = df.index
In [12]:
len(pd.unique(df['origin']))
Out[12]:
59
In [13]:
df.dtypes
Out[13]:
date           datetime64[ns]
delay                  object
distance               object
origin                 object
destination            object
index                   int64
dtype: object
In [14]:
df['delay'] = df['delay'].astype(int)
In [15]:
df['test'] = (df['delay'] > 5)*1
In [16]:
df2=df
In [17]:
## hash function to convert origin and destination to ints.
df2['origin'].unique()
Out[17]:
array(['MCI', 'LAX', 'ONT', 'OAK', 'MSY', 'LAS', 'MDW', 'RNO', 'FLL',
       'SEA', 'ELP', 'SMF', 'BNA', 'SLC', 'TPA', 'BOI', 'SJC', 'ISP',
       'BWI', 'PHX', 'BHM', 'DAL', 'HOU', 'ABQ', 'BDL', 'OKC', 'SDF',
       'MHT', 'LBB', 'PDX', 'OMA', 'AUS', 'BUR', 'MCO', 'CLE', 'DTW',
       'RDU', 'JAX', 'PVD', 'SAN', 'STL', 'IND', 'TUL', 'SFO', 'GEG',
       'MAF', 'SAT', 'CMH', 'ALB', 'BUF', 'TUS', 'AMA', 'JAN', 'HRL',
       'SNA', 'IAH', 'LIT', 'CRP', 'PBI'], dtype=object)
In [18]:
uniqueValues = df2['origin'].unique()
uniqueValues = sorted(uniqueValues)
In [19]:
column = 'origin'
x = 'MCI'
def HashOrigin(x):
    for i, value in enumerate(uniqueValues):
        if x == value:
            return i
In [20]:
df2['test'] = df2['origin'].apply(HashOrigin)
In [21]:
df2
Out[21]:
date delay distance origin destination index test
0 2001-01-01 00:01:00 14 405 MCI MDW 0 31
1 2001-01-01 05:30:00 -11 370 LAX PHX 1 27
2 2001-01-01 05:40:00 5 389 ONT SMF 2 39
3 2001-01-01 06:00:00 -5 337 OAK LAX 3 36
4 2001-01-01 06:00:00 3 303 MSY HOU 4 35
5 2001-01-01 06:05:00 5 236 LAS LAX 5 26
6 2001-01-01 06:10:00 -4 405 MDW MCI 6 33
7 2001-01-01 06:15:00 -2 188 RNO SJC 7 45
8 2001-01-01 06:15:00 0 197 FLL TPA 8 17
9 2001-01-01 06:15:00 0 399 SEA BOI 9 49
10 2001-01-01 06:15:00 5 562 ELP DAL 10 16
11 2001-01-01 06:20:00 -5 358 SMF BUR 11 53
12 2001-01-01 06:20:00 0 491 BNA MCI 12 6
13 2001-01-01 06:25:00 -6 361 ONT OAK 13 39
14 2001-01-01 06:25:00 0 313 MCI OKC 14 31
15 2001-01-01 06:25:00 1 271 MDW SDF 15 33
16 2001-01-01 06:25:00 5 689 SLC SEA 16 52
17 2001-01-01 06:30:00 -1 487 TPA MSY 17 56
18 2001-01-01 06:30:00 -10 399 BOI SEA 18 7
19 2001-01-01 06:30:00 -15 621 SJC PHX 19 51
20 2001-01-01 06:30:00 -2 361 OAK ONT 20 36
21 2001-01-01 06:30:00 -3 220 ISP BWI 21 23
22 2001-01-01 06:30:00 -3 397 SMF LAS 22 53
23 2001-01-01 06:30:00 -8 251 MDW STL 23 33
24 2001-01-01 06:30:00 -8 417 SJC SAN 24 51
25 2001-01-01 06:30:00 1 682 BWI BHM 25 10
26 2001-01-01 06:30:00 10 370 PHX LAX 26 42
27 2001-01-01 06:30:00 15 177 BHM BNA 27 5
28 2001-01-01 06:30:00 2 562 DAL ELP 28 14
29 2001-01-01 06:35:00 0 453 HOU TUL 29 19
30 2001-01-01 06:35:00 1 601 RNO PHX 30 45
31 2001-01-01 06:35:00 2 670 BNA HOU 31 6
32 2001-01-01 06:35:00 9 677 ABQ LAX 32 0
33 2001-01-01 06:40:00 -21 777 BDL MDW 33 4
34 2001-01-01 06:40:00 -8 197 ONT LAS 34 39
35 2001-01-01 06:40:00 3 833 OKC PHX 35 37
36 2001-01-01 06:40:00 5 495 SDF BWI 36 48
37 2001-01-01 06:45:00 -14 423 MDW OMA 37 33
38 2001-01-01 06:45:00 -14 605 SEA SMF 38 49
39 2001-01-01 06:45:00 -19 838 MHT MDW 39 34
40 2001-01-01 06:45:00 -5 223 LAS BUR 40 26
41 2001-01-01 06:45:00 -5 296 SJC BUR 41 51
42 2001-01-01 06:45:00 5 405 MCI MDW 42 31
43 2001-01-01 06:45:00 9 460 TPA BHM 43 56
44 2001-01-01 06:47:00 17 293 LBB DAL 44 28
45 2001-01-01 06:50:00 20 570 BHM HOU 45 5
46 2001-01-01 06:50:00 7 588 BWI BNA 46 10
47 2001-01-01 06:53:00 16 590 SLC LAX 47 52
48 2001-01-01 06:55:00 -19 1797 LAX BNA 48 27
49 2001-01-01 06:55:00 -28 1864 BWI SLC 49 10
50 2001-01-01 07:00:00 -10 1481 PDX MCI 50 41
51 2001-01-01 07:00:00 -10 361 OAK ONT 51 36
52 2001-01-01 07:00:00 -28 1235 LAS HOU 52 26
53 2001-01-01 07:00:00 -3 256 LAS PHX 53 26
54 2001-01-01 07:00:00 -3 588 SLC OAK 54 52
55 2001-01-01 07:00:00 -4 423 OMA MDW 55 38
56 2001-01-01 07:00:00 -4 612 TPA BNA 56 56
57 2001-01-01 07:00:00 -5 1090 AUS LAS 57 3
58 2001-01-01 07:00:00 -5 296 BUR SJC 58 9
59 2001-01-01 07:00:00 -5 369 PHX BUR 59 42
60 2001-01-01 07:00:00 -5 407 OAK LAS 60 36
61 2001-01-01 07:00:00 -6 325 OAK BUR 61 36
62 2001-01-01 07:00:00 -7 236 LAS LAX 62 26
63 2001-01-01 07:00:00 0 223 BUR LAS 63 9
64 2001-01-01 07:00:00 0 303 MSY HOU 64 35
65 2001-01-01 07:00:00 1 358 BUR SMF 65 9
66 2001-01-01 07:00:00 12 550 MCO MSY 66 32
67 2001-01-01 07:00:00 17 284 MDW CMH 67 33
68 2001-01-01 07:00:00 4 307 CLE MDW 68 11
69 2001-01-01 07:04:00 -2 457 DTW BNA 69 15
70 2001-01-01 07:05:00 -1 471 MSY BNA 70 35
71 2001-01-01 07:05:00 -10 443 RDU BNA 71 44
72 2001-01-01 07:05:00 -15 677 LAX ABQ 72 27
73 2001-01-01 07:05:00 -18 1246 HOU BWI 73 19
74 2001-01-01 07:05:00 -5 188 SJC RNO 74 51
75 2001-01-01 07:05:00 -9 386 SJC LAS 75 51
76 2001-01-01 07:05:00 0 588 OAK SLC 76 36
77 2001-01-01 07:05:00 13 365 JAX BHM 77 25
78 2001-01-01 07:05:00 4 1072 MCO MCI 78 32
79 2001-01-01 07:05:00 7 967 MCI BWI 79 31
80 2001-01-01 07:06:00 -5 303 HOU MSY 80 19
81 2001-01-01 07:08:00 -14 765 ISP MDW 81 23
82 2001-01-01 07:10:00 -15 1959 OAK BNA 82 36
83 2001-01-01 07:10:00 -26 2277 PVD PHX 83 43
84 2001-01-01 07:10:00 -31 1599 SAN MSY 84 46
85 2001-01-01 07:10:00 -8 251 STL MDW 85 55
86 2001-01-01 07:10:00 0 1506 SDF PHX 86 48
87 2001-01-01 07:10:00 2 842 TPA BWI 87 56
88 2001-01-01 07:15:00 -12 515 IND BWI 88 22
89 2001-01-01 07:15:00 -13 1076 TUL LAS 89 57
90 2001-01-01 07:15:00 -2 447 SFO SAN 90 50
91 2001-01-01 07:15:00 -25 2106 BWI LAS 91 10
92 2001-01-01 07:15:00 -3 405 MCI MDW 92 31
93 2001-01-01 07:15:00 -3 546 GEG SLC 93 18
94 2001-01-01 07:15:00 -7 386 LAS SJC 94 26
95 2001-01-01 07:15:00 24 938 MHT BNA 95 34
96 2001-01-01 07:20:00 -13 1489 OAK MCI 96 36
97 2001-01-01 07:20:00 -20 632 RDU MDW 97 44
98 2001-01-01 07:20:00 -5 446 OAK SAN 98 36
99 2001-01-01 07:20:00 -8 762 PDX LAS 99 41
100 2001-01-01 07:20:00 13 479 SMF PDX 100 53
101 2001-01-01 07:25:00 -12 852 BDL BNA 101 4
102 2001-01-01 07:25:00 -8 935 PHX TUL 102 42
103 2001-01-01 07:25:00 4 294 MAF AUS 103 30
104 2001-01-01 07:30:00 -2 192 SAT HOU 104 47
105 2001-01-01 07:30:00 -3 1591 IND LAS 105 22
106 2001-01-01 07:30:00 -3 284 CMH MDW 106 12
107 2001-01-01 07:30:00 -7 288 ALB BWI 107 1
108 2001-01-01 07:30:00 0 308 SJC LAX 108 51
109 2001-01-01 07:30:00 25 928 TPA AUS 109 56
110 2001-01-01 07:30:00 4 410 BHM STL 110 5
111 2001-01-01 07:30:00 6 673 FLL MSY 111 17
112 2001-01-01 07:30:00 8 448 CLE BNA 112 11
113 2001-01-01 07:33:00 -17 967 BWI MCI 113 10
114 2001-01-01 07:33:00 -3 281 BUF BWI 114 8
115 2001-01-01 07:35:00 -10 229 IND STL 115 22
116 2001-01-01 07:35:00 -13 251 MDW STL 116 33
117 2001-01-01 07:35:00 -25 440 DTW STL 117 15
118 2001-01-01 07:35:00 -3 181 OKC DAL 118 37
119 2001-01-01 07:35:00 -5 1497 TPA ABQ 119 56
120 2001-01-01 07:35:00 -5 304 SAN PHX 120 46
121 2001-01-01 07:35:00 23 377 MHT BWI 121 34
122 2001-01-01 07:35:00 6 1011 BUF MCO 122 8
123 2001-01-01 07:35:00 8 345 RNO LAS 123 45
124 2001-01-01 07:38:00 5 370 LAX PHX 124 27
125 2001-01-01 07:40:00 -10 303 HOU MSY 125 19
126 2001-01-01 07:40:00 -11 718 MCI ABQ 126 31
127 2001-01-01 07:40:00 -15 325 BUR OAK 127 9
128 2001-01-01 07:40:00 -15 793 FLL BNA 128 17
129 2001-01-01 07:40:00 -17 1448 PHX BNA 129 42
130 2001-01-01 07:40:00 -2 294 AUS MAF 130 3
131 2001-01-01 07:40:00 -2 347 ELP PHX 131 16
132 2001-01-01 07:40:00 -25 1521 MDW LAS 132 33
133 2001-01-01 07:40:00 -6 587 TPA RDU 133 56
134 2001-01-01 07:40:00 -7 229 MDW DTW 134 33
135 2001-01-01 07:40:00 -7 351 TUL STL 135 57
136 2001-01-01 07:40:00 0 248 SAT DAL 136 47
137 2001-01-01 07:44:00 10 308 LAX SJC 137 27
138 2001-01-01 07:45:00 -2 223 BUR LAS 138 9
139 2001-01-01 07:45:00 -6 904 RDU MCI 139 44
140 2001-01-01 07:45:00 0 283 BDL BWI 140 4
141 2001-01-01 07:45:00 2 507 PHX SLC 141 42
142 2001-01-01 07:45:00 5 487 TPA MSY 142 56
143 2001-01-01 07:45:00 9 395 BNA MDW 143 6
144 2001-01-01 07:50:00 -12 646 PHX OAK 144 42
145 2001-01-01 07:50:00 -2 256 PHX LAS 145 42
146 2001-01-01 07:50:00 -5 367 TUS SAN 146 58
147 2001-01-01 07:50:00 -8 351 STL TUL 147 55
148 2001-01-01 07:50:00 -8 369 BUR PHX 148 9
149 2001-01-01 07:50:00 4 1455 BHM PHX 149 5
150 2001-01-01 07:53:00 -5 1363 LAX MCI 150 27
151 2001-01-01 07:55:00 -10 419 OKC HOU 151 37
152 2001-01-01 07:55:00 19 284 MDW CMH 152 33
153 2001-01-01 07:55:00 4 587 MCO JAN 153 32
154 2001-01-01 07:55:00 6 321 BHM MSY 154 5
155 2001-01-01 07:57:00 -2 1814 LAX IND 155 27
156 2001-01-01 07:57:00 -3 689 SEA SLC 156 49
157 2001-01-01 08:00:00 -10 1162 RDU AUS 157 44
158 2001-01-01 08:00:00 -10 337 LAX OAK 158 27
159 2001-01-01 08:00:00 -10 671 SEA OAK 159 49
160 2001-01-01 08:00:00 -10 989 MDW MCO 160 33
161 2001-01-01 08:00:00 -11 237 STL MCI 161 55
162 2001-01-01 08:00:00 -13 843 PHX SAT 162 42
163 2001-01-01 08:00:00 -13 998 MSY BWI 163 35
164 2001-01-01 08:00:00 -19 787 MCO BWI 164 32
165 2001-01-01 08:00:00 -3 1073 ALB MCO 165 1
166 2001-01-01 08:00:00 -3 197 LAS ONT 166 26
167 2001-01-01 08:00:00 -3 407 OAK LAS 167 36
168 2001-01-01 08:00:00 -4 239 HOU DAL 168 19
169 2001-01-01 08:00:00 -4 337 OAK LAX 169 36
170 2001-01-01 08:00:00 -5 325 ONT PHX 170 39
171 2001-01-01 08:00:00 -5 462 STL OKC 171 55
172 2001-01-01 08:00:00 -6 1037 PHX OMA 172 42
173 2001-01-01 08:00:00 -6 972 ISP MCO 173 23
174 2001-01-01 08:00:00 0 342 SJC SNA 174 51
175 2001-01-01 08:00:00 0 358 SMF BUR 175 53
176 2001-01-01 08:00:00 0 612 BNA TPA 176 6
177 2001-01-01 08:00:00 12 358 BUR SMF 177 9
178 2001-01-01 08:00:00 13 389 ONT SMF 178 39
179 2001-01-01 08:00:00 9 1797 BNA LAX 179 6
180 2001-01-01 08:00:00 9 437 MSY DAL 180 35
181 2001-01-01 08:05:00 -1 304 PHX SAN 181 42
182 2001-01-01 08:05:00 -1 345 LAS RNO 182 26
183 2001-01-01 08:05:00 -13 989 MCO MDW 183 32
184 2001-01-01 08:05:00 -14 727 TPA SDF 184 56
185 2001-01-01 08:05:00 -2 325 BUR OAK 185 9
186 2001-01-01 08:05:00 -4 314 BWI CLE 186 10
187 2001-01-01 08:05:00 -7 405 MDW MCI 187 33
188 2001-01-01 08:05:00 -8 822 SAT BNA 188 47
189 2001-01-01 08:05:00 25 1448 BNA PHX 189 6
190 2001-01-01 08:05:00 7 457 BNA DTW 190 6
191 2001-01-01 08:07:00 10 189 DAL AUS 191 14
192 2001-01-01 08:10:00 -12 447 SAN SFO 192 46
193 2001-01-01 08:10:00 -7 197 ONT LAS 193 39
194 2001-01-01 08:10:00 0 714 LAX ELP 194 27
195 2001-01-01 08:10:00 5 484 JAX BNA 195 25
196 2001-01-01 08:15:00 -10 223 LAS BUR 196 26
197 2001-01-01 08:15:00 -17 1999 PHX BWI 197 42
198 2001-01-01 08:15:00 -24 1751 SAN BNA 198 46
199 2001-01-01 08:15:00 -3 677 LAX ABQ 199 27
200 2001-01-01 08:15:00 -5 386 LAS SJC 200 26
201 2001-01-01 08:15:00 -7 1140 MCI LAS 201 31
202 2001-01-01 08:15:00 5 223 TUL MCI 202 57
203 2001-01-01 08:15:00 8 1588 BNA LAS 203 6
204 2001-01-01 08:15:00 8 321 MSY BHM 204 35
205 2001-01-01 08:17:00 13 303 MSY HOU 205 35
206 2001-01-01 08:20:00 -14 1262 STL PHX 206 55
207 2001-01-01 08:20:00 -3 1020 HOU PHX 207 19
208 2001-01-01 08:20:00 -31 1234 PVD MCI 208 43
209 2001-01-01 08:20:00 -5 422 RNO SLC 209 45
210 2001-01-01 08:20:00 -5 550 MSY MCO 210 35
211 2001-01-01 08:20:00 -9 197 FLL TPA 211 17
212 2001-01-01 08:20:00 8 405 MCI MDW 212 31
213 2001-01-01 08:21:00 10 236 LAX LAS 213 27
214 2001-01-01 08:23:00 -7 646 OAK PHX 214 36
215 2001-01-01 08:25:00 -2 188 SJC RNO 215 51
216 2001-01-01 08:25:00 -3 296 BUR SJC 216 9
217 2001-01-01 08:25:00 -5 1044 MCI PHX 217 31
218 2001-01-01 08:25:00 -7 304 SAN PHX 218 46
219 2001-01-01 08:25:00 5 1588 LAS BNA 219 26
220 2001-01-01 08:25:00 5 368 LAS SLC 220 26
221 2001-01-01 08:30:00 -10 440 STL DTW 221 55
222 2001-01-01 08:30:00 -2 580 ABQ DAL 222 0
223 2001-01-01 08:30:00 -5 802 MCO CMH 223 32
224 2001-01-01 08:30:00 -7 239 DAL HOU 224 14
225 2001-01-01 08:30:00 -7 255 RDU BWI 225 44
226 2001-01-01 08:30:00 -8 370 PHX LAX 226 42
227 2001-01-01 08:30:00 0 370 LAX PHX 227 27
228 2001-01-01 08:30:00 0 446 SAN OAK 228 46
229 2001-01-01 08:30:00 31 758 AMA LAS 229 2
230 2001-01-01 08:35:00 -1 291 BOI SLC 230 7
231 2001-01-01 08:35:00 -13 347 PHX ELP 231 42
232 2001-01-01 08:35:00 -14 1099 OMA LAS 232 38
233 2001-01-01 08:35:00 -14 405 MDW MCI 233 33
234 2001-01-01 08:35:00 -2 325 OAK BUR 234 36
235 2001-01-01 08:35:00 -3 611 MDW BWI 235 33
236 2001-01-01 08:35:00 -8 325 PHX ONT 236 42
237 2001-01-01 08:35:00 0 480 SAN SMF 237 46
238 2001-01-01 08:35:00 5 605 SMF SEA 238 53
239 2001-01-01 08:38:00 -3 888 BWI JAN 239 10
240 2001-01-01 08:38:00 14 937 HOU MDW 240 19
241 2001-01-01 08:40:00 -11 1444 MDW PHX 241 33
242 2001-01-01 08:40:00 -12 303 HOU MSY 242 19
243 2001-01-01 08:40:00 -22 1236 MHT MCI 243 34
244 2001-01-01 08:40:00 -5 180 RNO OAK 244 45
245 2001-01-01 08:40:00 -6 479 PDX SMF 245 41
246 2001-01-01 08:40:00 6 1142 MHT MCO 246 34
247 2001-01-01 08:45:00 -10 1624 LAS SDF 247 26
248 2001-01-01 08:45:00 -10 777 MDW BDL 248 33
249 2001-01-01 08:45:00 -15 217 DAL IAH 249 14
250 2001-01-01 08:45:00 -17 925 FLL BWI 250 17
251 2001-01-01 08:45:00 -4 178 FLL MCO 251 17
252 2001-01-01 08:45:00 -5 1090 LAS AUS 252 26
253 2001-01-01 08:45:00 -5 148 AUS HOU 253 3
254 2001-01-01 08:45:00 -7 296 STL LIT 254 55
255 2001-01-01 08:45:00 0 279 GEG PDX 255 18
256 2001-01-01 08:45:00 0 588 OAK SLC 256 36
257 2001-01-01 08:45:00 1 323 SDF BHM 257 48
258 2001-01-01 08:45:00 14 1407 BWI SAT 258 10
259 2001-01-01 08:45:00 2 889 ABQ OAK 259 0
260 2001-01-01 08:45:00 27 368 SLC LAS 260 52
261 2001-01-01 08:46:00 2 397 LAS SMF 261 26
262 2001-01-01 08:48:00 7 423 MDW OMA 262 33
263 2001-01-01 08:50:00 -20 621 PHX SJC 263 42
264 2001-01-01 08:50:00 -8 236 LAX LAS 264 27
265 2001-01-01 08:50:00 -8 520 BOI LAS 265 7
266 2001-01-01 08:50:00 0 453 HOU TUL 266 19
267 2001-01-01 08:50:00 10 325 ONT PHX 267 39
268 2001-01-01 08:50:00 18 765 MDW ISP 268 33
269 2001-01-01 08:55:00 3 405 MDW MCI 269 33
270 2001-01-01 08:55:00 4 838 MDW MHT 270 33
271 2001-01-01 08:55:00 7 220 BWI ISP 271 10
272 2001-01-01 09:00:00 -10 337 LAX OAK 272 27
273 2001-01-01 09:00:00 -11 256 PHX LAS 273 42
274 2001-01-01 09:00:00 -12 544 MDW LIT 274 33
275 2001-01-01 09:00:00 -3 480 SMF SAN 275 53
276 2001-01-01 09:00:00 -4 246 MAF ELP 276 30
277 2001-01-01 09:00:00 -4 288 BWI ALB 277 10
278 2001-01-01 09:00:00 -5 236 LAS LAX 278 26
279 2001-01-01 09:00:00 -8 628 SAN ABQ 279 46
280 2001-01-01 09:00:00 0 1034 ISP TPA 280 23
281 2001-01-01 09:00:00 0 389 SMF ONT 281 53
282 2001-01-01 09:00:00 13 484 BNA JAX 282 6
283 2001-01-01 09:00:00 22 181 DAL OKC 283 14
284 2001-01-01 09:00:00 42 1999 BWI PHX 284 10
285 2001-01-01 09:00:00 5 370 PHX LAX 285 42
286 2001-01-01 09:00:00 8 303 MSY HOU 286 35
287 2001-01-01 09:03:00 3 697 SJC SEA 287 51
288 2001-01-01 09:03:00 5 395 MDW BNA 288 33
289 2001-01-01 09:04:00 -5 1069 LAS SAT 289 26
290 2001-01-01 09:05:00 -1 148 HOU AUS 290 19
291 2001-01-01 09:05:00 -1 254 STL SDF 291 55
292 2001-01-01 09:05:00 -12 628 ABQ SAN 292 0
293 2001-01-01 09:05:00 -2 192 HOU SAT 293 19
294 2001-01-01 09:05:00 -22 687 STL HOU 294 55
295 2001-01-01 09:05:00 -26 697 SEA SJC 295 49
296 2001-01-01 09:05:00 -5 487 TPA MSY 296 56
297 2001-01-01 09:05:00 6 759 HOU ABQ 297 19
298 2001-01-01 09:08:00 3 370 LAX PHX 298 27
299 2001-01-01 09:09:00 31 236 LAS LAX 299 26
300 2001-01-01 09:10:00 -1 1442 SMF MCI 300 53
301 2001-01-01 09:10:00 -10 487 MSY TPA 301 35
302 2001-01-01 09:10:00 -18 304 PHX SAN 302 42
303 2001-01-01 09:10:00 -2 304 SAN PHX 303 46
304 2001-01-01 09:10:00 -2 371 OAK SNA 304 36
305 2001-01-01 09:10:00 -23 1671 MSY LAX 305 35
306 2001-01-01 09:10:00 -4 347 ELP PHX 306 16
307 2001-01-01 09:10:00 -8 361 ONT OAK 307 39
308 2001-01-01 09:10:00 0 1235 HOU LAS 308 19
309 2001-01-01 09:13:00 0 444 PDX RNO 309 41
310 2001-01-01 09:13:00 0 451 IND MCI 310 22
311 2001-01-01 09:13:00 12 666 JAN MDW 311 24
312 2001-01-01 09:15:00 -10 308 LAX SJC 312 27
313 2001-01-01 09:15:00 -4 189 AUS DAL 313 3
314 2001-01-01 09:15:00 -5 276 HRL HOU 314 20
315 2001-01-01 09:15:00 -5 333 ONT SJC 315 39
316 2001-01-01 09:15:00 -7 410 STL BHM 316 55
317 2001-01-01 09:15:00 -8 651 SFO PHX 317 50
318 2001-01-01 09:15:00 -9 440 DTW STL 318 15
319 2001-01-01 09:15:00 4 296 DAL LIT 319 14
320 2001-01-01 09:18:00 9 570 BHM HOU 320 5
321 2001-01-01 09:20:00 -1 283 BDL BWI 321 4
322 2001-01-01 09:20:00 -2 325 ONT PHX 322 39
323 2001-01-01 09:20:00 -5 446 OAK SAN 323 36
324 2001-01-01 09:20:00 -7 588 BWI BNA 324 10
325 2001-01-01 09:20:00 0 407 OAK LAS 325 36
326 2001-01-01 09:20:00 2 543 OAK PDX 326 36
327 2001-01-01 09:22:00 4 937 MDW HOU 327 33
328 2001-01-01 09:24:00 14 2106 LAS BWI 328 26
329 2001-01-01 09:25:00 -1 180 OAK RNO 329 36
330 2001-01-01 09:25:00 -13 281 BWI BUF 330 10
331 2001-01-01 09:25:00 -17 1489 MCI SEA 331 31
332 2001-01-01 09:25:00 -23 1073 MCO PVD 332 32
333 2001-01-01 09:25:00 -27 1977 BNA SEA 333 6
334 2001-01-01 09:25:00 -4 237 TUL DAL 334 57
335 2001-01-01 09:25:00 -7 288 ALB BWI 335 1
336 2001-01-01 09:25:00 3 303 MSY HOU 336 35
337 2001-01-01 09:25:00 4 358 SMF BUR 337 53
338 2001-01-01 09:25:00 5 487 ABQ LAS 338 0
339 2001-01-01 09:30:00 -10 325 BUR OAK 339 9
340 2001-01-01 09:30:00 -12 239 HOU DAL 340 19
341 2001-01-01 09:30:00 -16 1137 TPA PVD 341 56
342 2001-01-01 09:30:00 -2 1044 MCI PHX 342 31
343 2001-01-01 09:30:00 -2 1751 BNA ONT 343 6
344 2001-01-01 09:30:00 -5 239 DAL HOU 344 14
345 2001-01-01 09:30:00 -5 370 PHX LAX 345 42
346 2001-01-01 09:30:00 -6 1140 LAS MCI 346 26
347 2001-01-01 09:30:00 -8 369 BUR PHX 347 9
348 2001-01-01 09:30:00 -9 670 HOU BNA 348 19
349 2001-01-01 09:30:00 0 281 BUF BWI 349 8
350 2001-01-01 09:30:00 12 314 CLE BWI 350 11
351 2001-01-01 09:30:00 2 935 TUL PHX 351 57
352 2001-01-01 09:30:00 3 405 MCI MDW 352 31
353 2001-01-01 09:30:00 8 580 DAL ABQ 353 14
354 2001-01-01 09:33:00 13 283 BWI BDL 354 10
355 2001-01-01 09:35:00 -4 762 LAS PDX 355 26
356 2001-01-01 09:35:00 -5 236 LAX LAS 356 27
357 2001-01-01 09:35:00 0 682 BHM BWI 357 5
358 2001-01-01 09:35:00 3 471 BNA MSY 358 6
359 2001-01-01 09:35:00 5 371 SNA OAK 359 54
360 2001-01-01 09:37:00 13 829 CMH TPA 360 12
361 2001-01-01 09:38:00 -4 671 OAK SEA 361 36
362 2001-01-01 09:38:00 8 1242 AUS LAX 362 3
363 2001-01-01 09:39:00 18 513 JAX MSY 363 25
364 2001-01-01 09:39:00 36 1751 BNA SAN 364 6
365 2001-01-01 09:40:00 -10 328 PVD BWI 365 43
366 2001-01-01 09:40:00 -3 223 LAS BUR 366 26
367 2001-01-01 09:40:00 -6 307 CLE MDW 367 11
368 2001-01-01 09:40:00 -7 1772 LAS CMH 368 26
369 2001-01-01 09:40:00 0 325 OAK BUR 369 36
370 2001-01-01 09:40:00 0 612 TPA BNA 370 56
371 2001-01-01 09:41:00 -3 188 RNO SJC 371 45
372 2001-01-01 09:42:00 16 632 MDW RDU 372 33
373 2001-01-01 09:45:00 -10 303 HOU MSY 373 19
374 2001-01-01 09:45:00 -18 1301 PHX MSY 374 42
375 2001-01-01 09:45:00 -2 296 SJC BUR 375 51
376 2001-01-01 09:45:00 -21 632 RDU MDW 376 44
377 2001-01-01 09:45:00 -25 1489 MCI OAK 377 31
378 2001-01-01 09:45:00 -5 1479 MCI SJC 378 31
379 2001-01-01 09:45:00 -5 180 RNO OAK 379 45
380 2001-01-01 09:45:00 -8 419 OKC HOU 380 37
381 2001-01-01 09:45:00 0 293 DAL LBB 381 14
382 2001-01-01 09:45:00 10 291 SLC BOI 382 52
383 2001-01-01 09:45:00 4 663 BWI JAX 383 10
384 2001-01-01 09:45:00 7 907 BNA PVD 384 6
385 2001-01-01 09:46:00 8 1137 PVD TPA 385 43
386 2001-01-01 09:47:00 6 319 MAF DAL 386 30
387 2001-01-01 09:48:00 27 479 SMF PDX 387 53
388 2001-01-01 09:48:00 3 1301 MSY PHX 388 35
389 2001-01-01 09:48:00 7 590 LAX SLC 389 27
390 2001-01-01 09:50:00 -10 325 PHX ONT 390 42
391 2001-01-01 09:50:00 -12 1588 LAS BNA 391 26
392 2001-01-01 09:50:00 -12 601 PHX RNO 392 42
393 2001-01-01 09:50:00 -21 1448 PHX BNA 393 42
394 2001-01-01 09:50:00 -28 1618 LAS BHM 394 26
395 2001-01-01 09:50:00 -5 304 SAN PHX 395 46
396 2001-01-01 09:50:00 -5 462 OKC STL 396 37
397 2001-01-01 09:50:00 -5 520 LAS BOI 397 26
398 2001-01-01 09:50:00 6 324 AMA DAL 398 2
399 2001-01-01 09:53:00 18 687 HOU STL 399 19
400 2001-01-01 09:54:00 4 223 MCI TUL 400 31
401 2001-01-01 09:55:00 -15 714 ELP LAX 401 16
402 2001-01-01 09:55:00 -19 1363 MCI LAX 402 31
403 2001-01-01 09:55:00 -3 1107 PHX SEA 403 42
404 2001-01-01 09:55:00 -7 446 SAN OAK 404 46
405 2001-01-01 09:55:00 -7 647 SMF PHX 405 53
406 2001-01-01 09:55:00 -7 775 LAS LBB 406 26
407 2001-01-01 09:55:00 0 842 BWI TPA 407 10
408 2001-01-01 09:55:00 1 828 MCO IND 408 32
409 2001-01-01 09:55:00 77 279 PDX GEG 409 41
410 2001-01-01 09:56:00 13 515 BWI IND 410 10
411 2001-01-01 10:00:00 -1 687 HOU STL 411 19
412 2001-01-01 10:00:00 -10 605 SEA SMF 412 49
413 2001-01-01 10:00:00 -10 677 ABQ LAX 413 0
414 2001-01-01 10:00:00 -11 513 MSY JAX 414 35
415 2001-01-01 10:00:00 -15 337 OAK LAX 415 36
416 2001-01-01 10:00:00 -2 223 BUR LAS 416 9
417 2001-01-01 10:00:00 -5 1521 LAS MDW 417 26
418 2001-01-01 10:00:00 -5 397 LAS SMF 418 26
419 2001-01-01 10:00:00 -6 369 PHX BUR 419 42
420 2001-01-01 10:00:00 0 229 MDW DTW 420 33
421 2001-01-01 10:00:00 0 236 LAS LAX 421 26
422 2001-01-01 10:00:00 10 1501 MSY LAS 422 35
423 2001-01-01 10:00:00 5 727 SDF TPA 423 48
424 2001-01-01 10:00:00 9 888 JAN BWI 424 24
425 2001-01-01 10:03:00 18 630 SLC PDX 425 52
426 2001-01-01 10:05:00 -1 229 DTW MDW 426 15
427 2001-01-01 10:05:00 -5 197 ONT LAS 427 39
428 2001-01-01 10:05:00 -7 584 ELP LAS 428 16
429 2001-01-01 10:05:00 -9 217 IAH DAL 429 21
430 2001-01-01 10:06:00 -12 1670 BWI ABQ 430 10
431 2001-01-01 10:08:00 16 256 LAS PHX 431 26
432 2001-01-01 10:10:00 -1 507 SLC PHX 432 52
433 2001-01-01 10:10:00 -2 422 SLC RNO 433 52
434 2001-01-01 10:10:00 -21 569 PDX SJC 434 41
435 2001-01-01 10:10:00 -3 342 SJC SNA 435 51
436 2001-01-01 10:10:00 -3 361 OAK ONT 436 36
437 2001-01-01 10:10:00 -5 636 SAN ELP 437 46
438 2001-01-01 10:10:00 -6 251 MDW STL 438 33
439 2001-01-01 10:10:00 -6 386 SJC LAS 439 51
440 2001-01-01 10:10:00 0 341 AUS LBB 440 3
441 2001-01-01 10:10:00 18 588 SLC OAK 441 52
442 2001-01-01 10:10:00 2 303 MSY HOU 442 35
443 2001-01-01 10:15:00 -5 178 FLL MCO 443 17
444 2001-01-01 10:15:00 -5 373 LAX SMF 444 27
445 2001-01-01 10:15:00 -6 528 AUS ELP 445 3
446 2001-01-01 10:15:00 -8 1262 STL PHX 446 55
447 2001-01-01 10:15:00 12 1040 MCO SAT 447 32
448 2001-01-01 10:15:00 5 417 SJC SAN 448 51
449 2001-01-01 10:15:00 8 370 LAX PHX 449 27
450 2001-01-01 10:16:00 6 220 ISP BWI 450 23
451 2001-01-01 10:16:00 7 237 MCI STL 451 31
452 2001-01-01 10:17:00 12 181 OKC DAL 452 37
453 2001-01-01 10:20:00 -15 1140 MCI LAS 453 31
454 2001-01-01 10:20:00 -20 1552 ABQ MCO 454 0
455 2001-01-01 10:20:00 -3 833 PHX OKC 455 42
456 2001-01-01 10:20:00 -6 255 RDU BWI 456 44
457 2001-01-01 10:20:00 -6 389 ONT SMF 457 39
458 2001-01-01 10:20:00 -8 1069 SAT LAS 458 47
459 2001-01-01 10:20:00 16 370 PHX LAX 459 42
460 2001-01-01 10:20:00 2 1099 LAS OMA 460 26
461 2001-01-01 10:20:00 45 1262 PHX STL 461 42
462 2001-01-01 10:21:00 19 337 LAX OAK 462 27
463 2001-01-01 10:24:00 -2 1037 OMA PHX 463 38
464 2001-01-01 10:25:00 -1 237 DAL TUL 464 14
465 2001-01-01 10:25:00 -10 889 OAK ABQ 465 36
466 2001-01-01 10:25:00 -2 397 SMF LAS 466 53
467 2001-01-01 10:25:00 -2 480 SAN SMF 467 46
468 2001-01-01 10:25:00 -3 389 SMF ONT 468 53
469 2001-01-01 10:25:00 -5 288 ALB BWI 469 1
470 2001-01-01 10:25:00 -5 328 PHX ABQ 470 42
471 2001-01-01 10:25:00 -8 359 JAN HOU 471 24
472 2001-01-01 10:28:00 3 308 SJC LAX 472 51
473 2001-01-01 10:29:00 15 802 CMH MCO 473 12
474 2001-01-01 10:30:00 -13 708 IND MSY 474 22
475 2001-01-01 10:30:00 -2 239 HOU DAL 475 19
476 2001-01-01 10:30:00 -3 337 OAK LAX 476 36
477 2001-01-01 10:30:00 -4 180 RNO OAK 477 45
478 2001-01-01 10:30:00 -5 271 SDF MDW 478 48
479 2001-01-01 10:30:00 -7 1444 MDW PHX 479 33
480 2001-01-01 10:30:00 -8 239 DAL HOU 480 14
481 2001-01-01 10:30:00 -9 281 BWI BUF 481 10
482 2001-01-01 10:30:00 -9 370 LAX PHX 482 27
483 2001-01-01 10:30:00 0 370 PHX LAX 483 42
484 2001-01-01 10:30:00 1 223 TUL MCI 484 57
485 2001-01-01 10:30:00 14 564 SEA RNO 485 49
486 2001-01-01 10:30:00 5 1044 PHX MCI 486 42
487 2001-01-01 10:30:00 5 258 LAS SAN 487 26
488 2001-01-01 10:30:00 8 296 LIT STL 488 29
489 2001-01-01 10:35:00 -10 1262 PHX STL 489 42
490 2001-01-01 10:35:00 -6 325 ONT PHX 490 39
491 2001-01-01 10:35:00 2 296 LIT DAL 491 29
492 2001-01-01 10:35:00 7 480 SMF SAN 492 53
493 2001-01-01 10:39:00 5 337 LAX OAK 493 27
494 2001-01-01 10:40:00 -1 188 SJC RNO 494 51
495 2001-01-01 10:40:00 -12 313 MCI OKC 495 31
496 2001-01-01 10:40:00 -21 1011 MCO BUF 496 32
497 2001-01-01 10:40:00 -4 325 OAK BUR 497 36
498 2001-01-01 10:40:00 -6 328 ABQ PHX 498 0
499 2001-01-01 10:40:00 -7 588 BNA BWI 499 6
... ... ... ... ... ... ... ...
230583 2001-03-31 17:00:00 -5 258 SAN LAS 230583 46
230584 2001-03-31 17:00:00 -5 762 PDX LAS 230584 41
230585 2001-03-31 17:00:00 -6 337 LAX OAK 230585 27
230586 2001-03-31 17:00:00 -7 237 STL MCI 230586 55
230587 2001-03-31 17:00:00 0 480 SMF SAN 230587 53
230588 2001-03-31 17:00:00 0 689 SLC SEA 230588 52
230589 2001-03-31 17:02:00 3 1235 LAS HOU 230589 26
230590 2001-03-31 17:02:00 5 446 OAK SAN 230590 36
230591 2001-03-31 17:04:00 20 296 LIT STL 230591 29
230592 2001-03-31 17:05:00 -2 251 STL MDW 230592 55
230593 2001-03-31 17:05:00 -27 1156 SLC STL 230593 52
230594 2001-03-31 17:05:00 -37 2277 PVD PHX 230594 43
230595 2001-03-31 17:05:00 -6 295 ELP LBB 230595 16
230596 2001-03-31 17:05:00 -9 108 ISP PVD 230596 23
230597 2001-03-31 17:05:00 -9 251 MDW STL 230597 33
230598 2001-03-31 17:05:00 25 550 MCO MSY 230598 32
230599 2001-03-31 17:05:00 3 1142 MHT MCO 230599 34
230600 2001-03-31 17:05:00 34 386 SJC LAS 230600 51
230601 2001-03-31 17:08:00 -3 236 LAX LAS 230601 27
230602 2001-03-31 17:08:00 14 443 BNA RDU 230602 6
230603 2001-03-31 17:08:00 18 912 LIT BWI 230603 29
230604 2001-03-31 17:08:00 8 543 PDX OAK 230604 41
230605 2001-03-31 17:09:00 7 333 SJC ONT 230605 51
230606 2001-03-31 17:10:00 -10 1588 BNA LAS 230606 6
230607 2001-03-31 17:10:00 -10 359 HOU JAN 230607 19
230608 2001-03-31 17:10:00 -2 162 IND MDW 230608 22
230609 2001-03-31 17:10:00 -3 256 LAS PHX 230609 26
230610 2001-03-31 17:10:00 -3 588 BWI BNA 230610 10
230611 2001-03-31 17:10:00 -7 248 DAL SAT 230611 14
230612 2001-03-31 17:10:00 -7 325 PHX ONT 230612 42
230613 2001-03-31 17:10:00 -7 528 AUS ELP 230613 3
230614 2001-03-31 17:10:00 0 1069 SAT LAS 230614 47
230615 2001-03-31 17:10:00 0 223 TUL MCI 230615 57
230616 2001-03-31 17:10:00 66 616 MCO BNA 230616 32
230617 2001-03-31 17:13:00 0 543 OAK PDX 230617 36
230618 2001-03-31 17:14:00 31 1020 PHX HOU 230618 42
230619 2001-03-31 17:15:00 -1 550 MSY MCO 230619 35
230620 2001-03-31 17:15:00 -10 1044 MCI PHX 230620 31
230621 2001-03-31 17:15:00 -10 181 DAL OKC 230621 14
230622 2001-03-31 17:15:00 -3 405 MCI MDW 230622 31
230623 2001-03-31 17:15:00 -5 1099 LAS OMA 230623 26
230624 2001-03-31 17:15:00 -6 239 HOU DAL 230624 19
230625 2001-03-31 17:15:00 0 480 SAN SMF 230625 46
230626 2001-03-31 17:15:00 0 670 BNA HOU 230626 6
230627 2001-03-31 17:15:00 12 370 PHX LAX 230627 42
230628 2001-03-31 17:15:00 19 197 FLL TPA 230628 17
230629 2001-03-31 17:15:00 2 718 ABQ MCI 230629 0
230630 2001-03-31 17:17:00 188 142 PBI MCO 230630 40
230631 2001-03-31 17:20:00 -11 296 STL LIT 230631 55
230632 2001-03-31 17:20:00 -17 515 BWI IND 230632 10
230633 2001-03-31 17:20:00 -2 319 MAF DAL 230633 30
230634 2001-03-31 17:20:00 -2 697 SEA SJC 230634 49
230635 2001-03-31 17:20:00 -3 187 HOU CRP 230635 19
230636 2001-03-31 17:20:00 -3 291 BOI SLC 230636 7
230637 2001-03-31 17:20:00 -5 520 LAS BOI 230637 26
230638 2001-03-31 17:20:00 -7 307 CLE MDW 230638 11
230639 2001-03-31 17:20:00 -7 328 BWI PVD 230639 10
230640 2001-03-31 17:20:00 -7 562 DAL ELP 230640 14
230641 2001-03-31 17:20:00 0 283 BWI BDL 230641 10
230642 2001-03-31 17:20:00 19 632 RDU MDW 230642 44
230643 2001-03-31 17:20:00 39 1552 MCO ABQ 230643 32
230644 2001-03-31 17:20:00 40 405 MDW MCI 230644 33
230645 2001-03-31 17:20:00 95 307 MDW CLE 230645 33
230646 2001-03-31 17:22:00 16 1671 PHX DTW 230646 42
230647 2001-03-31 17:24:00 17 647 SMF PHX 230647 53
230648 2001-03-31 17:25:00 -2 373 LAX SMF 230648 27
230649 2001-03-31 17:25:00 -2 471 BNA MSY 230649 6
230650 2001-03-31 17:25:00 -22 2106 BWI LAS 230650 10
230651 2001-03-31 17:25:00 -5 371 OAK SNA 230651 36
230652 2001-03-31 17:25:00 0 1121 ABQ MDW 230652 0
230653 2001-03-31 17:25:00 0 345 RNO LAS 230653 45
230654 2001-03-31 17:25:00 2 313 OKC MCI 230654 37
230655 2001-03-31 17:25:00 8 570 HOU BHM 230655 19
230656 2001-03-31 17:26:00 0 345 LAS RNO 230656 26
230657 2001-03-31 17:27:00 15 178 MCO FLL 230657 32
230658 2001-03-31 17:28:00 0 671 OAK SEA 230658 36
230659 2001-03-31 17:29:00 9 284 MDW CMH 230659 33
230660 2001-03-31 17:30:00 -11 588 BNA BWI 230660 6
230661 2001-03-31 17:30:00 -2 220 ISP BWI 230661 23
230662 2001-03-31 17:30:00 -3 256 PHX LAS 230662 42
230663 2001-03-31 17:30:00 -3 279 PDX GEG 230663 41
230664 2001-03-31 17:30:00 -3 370 LAX PHX 230664 27
230665 2001-03-31 17:30:00 -6 239 HOU DAL 230665 19
230666 2001-03-31 17:30:00 -7 283 BDL BWI 230666 4
230667 2001-03-31 17:30:00 -8 258 SAN LAS 230667 46
230668 2001-03-31 17:30:00 -8 759 HOU ABQ 230668 19
230669 2001-03-31 17:30:00 10 325 BUR OAK 230669 9
230670 2001-03-31 17:30:00 3 397 SMF LAS 230670 53
230671 2001-03-31 17:30:00 64 178 FLL MCO 230671 17
230672 2001-03-31 17:30:00 7 484 JAX BNA 230672 25
230673 2001-03-31 17:33:00 0 296 LIT DAL 230673 29
230674 2001-03-31 17:33:00 66 1072 MCO MCI 230674 32
230675 2001-03-31 17:34:00 0 368 SLC LAS 230675 52
230676 2001-03-31 17:34:00 0 671 SEA OAK 230676 49
230677 2001-03-31 17:35:00 -10 271 SDF MDW 230677 48
230678 2001-03-31 17:35:00 -11 407 LAS OAK 230678 26
230679 2001-03-31 17:35:00 -13 967 BWI MCI 230679 10
230680 2001-03-31 17:35:00 -17 928 AUS TPA 230680 3
230681 2001-03-31 17:35:00 -8 319 DAL MAF 230681 14
230682 2001-03-31 17:35:00 -9 303 HOU MSY 230682 19
230683 2001-03-31 17:35:00 0 318 FLL JAX 230683 17
230684 2001-03-31 17:35:00 12 423 OMA MDW 230684 38
230685 2001-03-31 17:40:00 -1 197 TPA FLL 230685 56
230686 2001-03-31 17:40:00 -11 325 PHX ONT 230686 42
230687 2001-03-31 17:40:00 -2 718 MCO SDF 230687 32
230688 2001-03-31 17:40:00 -5 361 ONT OAK 230688 39
230689 2001-03-31 17:40:00 -6 281 BUF BWI 230689 8
230690 2001-03-31 17:40:00 -8 1521 LAS MDW 230690 26
230691 2001-03-31 17:40:00 -8 487 MSY TPA 230691 35
230692 2001-03-31 17:40:00 0 342 SNA SJC 230692 54
230693 2001-03-31 17:40:00 5 787 BWI MCO 230693 10
230694 2001-03-31 17:40:00 63 883 PBI BWI 230694 40
230695 2001-03-31 17:41:00 7 457 DTW BNA 230695 15
230696 2001-03-31 17:42:00 -6 248 SAT DAL 230696 47
230697 2001-03-31 17:43:00 87 319 MAF DAL 230697 30
230698 2001-03-31 17:45:00 -10 395 MDW BNA 230698 33
230699 2001-03-31 17:45:00 -5 223 ABQ ELP 230699 0
230700 2001-03-31 17:45:00 -5 308 LAX SJC 230700 27
230701 2001-03-31 17:45:00 -5 308 SJC LAX 230701 51
230702 2001-03-31 17:45:00 -5 367 TUS SAN 230702 58
230703 2001-03-31 17:45:00 -7 197 FLL TPA 230703 17
230704 2001-03-31 17:45:00 -8 407 OAK LAS 230704 36
230705 2001-03-31 17:45:00 0 192 SAT HOU 230705 47
230706 2001-03-31 17:45:00 105 304 SAN PHX 230706 46
230707 2001-03-31 17:45:00 26 303 MSY HOU 230707 35
230708 2001-03-31 17:45:00 5 904 MCI RDU 230708 31
230709 2001-03-31 17:48:00 -2 444 RNO PDX 230709 45
230710 2001-03-31 17:48:00 -4 1099 OMA LAS 230710 38
230711 2001-03-31 17:48:00 15 682 BWI BHM 230711 10
230712 2001-03-31 17:48:00 40 337 OAK LAX 230712 36
230713 2001-03-31 17:49:00 2 880 STL MCO 230713 55
230714 2001-03-31 17:50:00 -13 1034 TPA ISP 230714 56
230715 2001-03-31 17:50:00 -2 673 MSY FLL 230715 35
230716 2001-03-31 17:50:00 -5 410 CMH STL 230716 12
230717 2001-03-31 17:50:00 -6 276 HOU HRL 230717 19
230718 2001-03-31 17:50:00 -7 177 BHM BNA 230718 5
230719 2001-03-31 17:50:00 -8 328 ABQ PHX 230719 0
230720 2001-03-31 17:50:00 17 842 BWI TPA 230720 10
230721 2001-03-31 17:55:00 -10 405 MDW MCI 230721 33
230722 2001-03-31 17:55:00 -11 397 LAS SMF 230722 26
230723 2001-03-31 17:55:00 -12 304 SAN PHX 230723 46
230724 2001-03-31 17:55:00 -16 765 MDW ISP 230724 33
230725 2001-03-31 17:55:00 -18 1136 LIT PHX 230725 29
230726 2001-03-31 17:55:00 -3 304 PHX SAN 230726 42
230727 2001-03-31 17:55:00 -3 361 OAK ONT 230727 36
230728 2001-03-31 17:55:00 -5 1204 MHT TPA 230728 34
230729 2001-03-31 17:55:00 1 1076 LAS TUL 230729 26
230730 2001-03-31 17:55:00 4 491 MCI BNA 230730 31
230731 2001-03-31 17:56:00 18 328 PVD BWI 230731 43
230732 2001-03-31 17:58:00 34 178 FLL MCO 230732 17
230733 2001-03-31 17:58:00 4 417 SJC SAN 230733 51
230734 2001-03-31 17:59:00 2 1848 PHX MCO 230734 42
230735 2001-03-31 18:00:00 -1 337 OAK LAX 230735 36
230736 2001-03-31 18:00:00 -10 1020 PHX HOU 230736 42
230737 2001-03-31 18:00:00 -12 446 SAN OAK 230737 46
230738 2001-03-31 18:00:00 -13 337 LAX OAK 230738 27
230739 2001-03-31 18:00:00 -3 223 BUR LAS 230739 9
230740 2001-03-31 18:00:00 -4 605 SMF SEA 230740 53
230741 2001-03-31 18:00:00 -5 239 DAL HOU 230741 14
230742 2001-03-31 18:00:00 -5 367 SAN TUS 230742 46
230743 2001-03-31 18:00:00 -5 479 SMF PDX 230743 53
230744 2001-03-31 18:00:00 -9 333 ONT SJC 230744 39
230745 2001-03-31 18:00:00 0 236 LAX LAS 230745 27
230746 2001-03-31 18:00:00 0 239 HOU DAL 230746 19
230747 2001-03-31 18:00:00 0 271 MDW SDF 230747 33
230748 2001-03-31 18:00:00 13 370 LAX PHX 230748 27
230749 2001-03-31 18:00:00 14 180 RNO OAK 230749 45
230750 2001-03-31 18:00:00 14 321 MSY BHM 230750 35
230751 2001-03-31 18:00:00 19 872 AUS PHX 230751 3
230752 2001-03-31 18:00:00 4 1497 ABQ TPA 230752 0
230753 2001-03-31 18:03:00 72 2039 MCO LAS 230753 32
230754 2001-03-31 18:05:00 -10 197 LAS ONT 230754 26
230755 2001-03-31 18:05:00 -10 321 ABQ TUS 230755 0
230756 2001-03-31 18:05:00 -3 688 IND JAX 230756 22
230757 2001-03-31 18:05:00 -33 1162 AUS RDU 230757 3
230758 2001-03-31 18:05:00 -5 347 PHX ELP 230758 42
230759 2001-03-31 18:05:00 -5 446 OAK SAN 230759 36
230760 2001-03-31 18:05:00 1 389 SMF ONT 230760 53
230761 2001-03-31 18:05:00 11 358 SMF BUR 230761 53
230762 2001-03-31 18:05:00 129 534 MCO RDU 230762 32
230763 2001-03-31 18:10:00 -10 108 PVD ISP 230763 43
230764 2001-03-31 18:10:00 -12 256 PHX LAS 230764 42
230765 2001-03-31 18:10:00 -13 1546 RNO HOU 230765 45
230766 2001-03-31 18:10:00 -14 601 RNO PHX 230766 45
230767 2001-03-31 18:10:00 -18 588 SLC OAK 230767 52
230768 2001-03-31 18:10:00 -26 777 BDL MDW 230768 4
230769 2001-03-31 18:10:00 -3 162 MDW IND 230769 33
230770 2001-03-31 18:10:00 -5 325 BUR OAK 230770 9
230771 2001-03-31 18:10:00 -8 616 MCO BNA 230771 32
230772 2001-03-31 18:10:00 -9 386 LAS SJC 230772 26
230773 2001-03-31 18:11:00 47 457 BNA DTW 230773 6
230774 2001-03-31 18:11:00 51 174 PBI TPA 230774 40
230775 2001-03-31 18:12:00 26 325 ONT PHX 230775 39
230776 2001-03-31 18:14:00 31 296 BUR SJC 230776 9
230777 2001-03-31 18:15:00 -13 229 DTW MDW 230777 15
230778 2001-03-31 18:15:00 -29 1073 MCO ALB 230778 32
230779 2001-03-31 18:15:00 -3 371 OAK SNA 230779 36
230780 2001-03-31 18:15:00 -3 377 BWI MHT 230780 10
230781 2001-03-31 18:15:00 0 1599 MSY SAN 230781 35
230782 2001-03-31 18:15:00 0 369 BUR PHX 230782 9
230783 2001-03-31 18:15:00 0 484 BNA JAX 230783 6
230784 2001-03-31 18:15:00 7 714 LAX ELP 230784 27
230785 2001-03-31 18:20:00 -1 405 MCI MDW 230785 31
230786 2001-03-31 18:20:00 -13 369 PHX BUR 230786 42
230787 2001-03-31 18:20:00 6 437 MSY DAL 230787 35
230788 2001-03-31 18:23:00 -7 1037 OMA PHX 230788 38
230789 2001-03-31 18:25:00 -12 1448 BNA PHX 230789 6
230790 2001-03-31 18:25:00 -25 254 SDF STL 230790 48
230791 2001-03-31 18:25:00 -5 562 ELP DAL 230791 16
230792 2001-03-31 18:25:00 -5 842 TPA BWI 230792 56
230793 2001-03-31 18:25:00 -6 1140 MCI LAS 230793 31
230794 2001-03-31 18:25:00 -6 1506 PHX SDF 230794 42
230795 2001-03-31 18:25:00 -9 1235 HOU LAS 230795 19
230796 2001-03-31 18:25:00 -9 759 ABQ HOU 230796 0
230797 2001-03-31 18:25:00 2 187 CRP HOU 230797 13
230798 2001-03-31 18:25:00 5 666 HOU MCI 230798 19
230799 2001-03-31 18:30:00 -1 417 SAN SJC 230799 46
230800 2001-03-31 18:30:00 -1 848 MCO HOU 230800 32
230801 2001-03-31 18:30:00 -10 1751 BNA SAN 230801 6
230802 2001-03-31 18:30:00 -10 293 LBB DAL 230802 28
230803 2001-03-31 18:30:00 -11 972 SAT TPA 230803 47
230804 2001-03-31 18:30:00 -2 1156 STL SLC 230804 55
230805 2001-03-31 18:30:00 -4 239 DAL HOU 230805 14
230806 2001-03-31 18:30:00 -5 987 LAS OKC 230806 26
230807 2001-03-31 18:30:00 0 1069 LAS SAT 230807 26
230808 2001-03-31 18:30:00 0 370 LAX PHX 230808 27
230809 2001-03-31 18:30:00 0 371 SNA OAK 230809 54
230810 2001-03-31 18:30:00 10 251 STL MDW 230810 55
230811 2001-03-31 18:30:00 122 1448 PHX BNA 230811 42
230812 2001-03-31 18:30:00 37 389 ONT SMF 230812 39
230813 2001-03-31 18:33:00 -2 925 FLL BWI 230813 17
230814 2001-03-31 18:34:00 15 148 HOU AUS 230814 19
230815 2001-03-31 18:35:00 -10 507 PHX SLC 230815 42
230816 2001-03-31 18:35:00 -12 254 STL SDF 230816 55
230817 2001-03-31 18:35:00 -15 569 PDX SJC 230817 41
230818 2001-03-31 18:35:00 -15 689 SEA SLC 230818 49
230819 2001-03-31 18:35:00 -2 417 SJC SAN 230819 51
230820 2001-03-31 18:35:00 -3 197 ONT LAS 230820 39
230821 2001-03-31 18:35:00 -3 220 BWI ISP 230821 10
230822 2001-03-31 18:35:00 -6 407 LAS OAK 230822 26
230823 2001-03-31 18:35:00 -8 611 MDW BWI 230823 33
230824 2001-03-31 18:35:00 0 543 OAK PDX 230824 36
230825 2001-03-31 18:35:00 5 446 OAK SAN 230825 36
230826 2001-03-31 18:36:00 188 880 MCO STL 230826 32
230827 2001-03-31 18:40:00 -11 293 DAL LBB 230827 14
230828 2001-03-31 18:40:00 -16 590 SLC LAX 230828 52
230829 2001-03-31 18:40:00 -2 345 LAS RNO 230829 26
230830 2001-03-31 18:40:00 -9 888 JAN BWI 230830 24
230831 2001-03-31 18:40:00 12 612 TPA BNA 230831 56
230832 2001-03-31 18:40:00 14 325 PHX ONT 230832 42
230833 2001-03-31 18:40:00 28 256 LAS PHX 230833 26
230834 2001-03-31 18:40:00 3 181 OKC DAL 230834 37
230835 2001-03-31 18:42:00 20 997 MDW TPA 230835 33
230836 2001-03-31 18:45:00 -2 852 BNA BDL 230836 6
230837 2001-03-31 18:45:00 -5 304 SAN PHX 230837 46
230838 2001-03-31 18:45:00 -6 440 DTW STL 230838 15
230839 2001-03-31 18:45:00 -7 687 STL HOU 230839 55
230840 2001-03-31 18:45:00 -8 1020 HOU PHX 230840 19
230841 2001-03-31 18:45:00 0 229 STL IND 230841 55
230842 2001-03-31 18:45:00 0 258 SAN LAS 230842 46
230843 2001-03-31 18:45:00 12 759 HOU ABQ 230843 19
230844 2001-03-31 18:45:00 25 178 FLL MCO 230844 17
230845 2001-03-31 18:45:00 5 1073 PVD MCO 230845 43
230846 2001-03-31 18:45:00 9 1959 BNA OAK 230846 6
230847 2001-03-31 18:47:00 23 1591 LAS IND 230847 26
230848 2001-03-31 18:49:00 4 377 MHT BWI 230848 34
230849 2001-03-31 18:50:00 -10 281 BWI BUF 230849 10
230850 2001-03-31 18:50:00 -18 248 DAL SAT 230850 14
230851 2001-03-31 18:50:00 -3 142 PBI MCO 230851 40
230852 2001-03-31 18:50:00 -5 256 LAS PHX 230852 26
230853 2001-03-31 18:50:00 -5 422 SLC RNO 230853 52
230854 2001-03-31 18:50:00 -5 480 SAN SMF 230854 46
230855 2001-03-31 18:50:00 -7 279 GEG PDX 230855 18
230856 2001-03-31 18:50:00 0 283 BDL BWI 230856 4
230857 2001-03-31 18:50:00 17 451 TUS LAX 230857 58
230858 2001-03-31 18:50:00 19 395 MDW BNA 230858 33
230859 2001-03-31 18:50:00 5 328 PVD BWI 230859 43
230860 2001-03-31 18:50:00 55 787 MCO BWI 230860 32
230861 2001-03-31 18:50:00 77 189 DAL AUS 230861 14
230862 2001-03-31 18:52:00 14 233 SAT HRL 230862 47
230863 2001-03-31 18:53:00 42 370 PHX LAX 230863 42
230864 2001-03-31 18:55:00 -12 562 DAL ELP 230864 14
230865 2001-03-31 18:55:00 -20 1044 MCI PHX 230865 31
230866 2001-03-31 18:55:00 -23 1999 BWI PHX 230866 10
230867 2001-03-31 18:55:00 -4 304 PHX SAN 230867 42
230868 2001-03-31 18:55:00 -5 1072 MCI MCO 230868 31
230869 2001-03-31 18:55:00 -7 507 SLC PHX 230869 52
230870 2001-03-31 18:55:00 0 236 LAS LAX 230870 26
230871 2001-03-31 18:55:00 25 1442 MCI SMF 230871 31
230872 2001-03-31 18:55:00 5 361 ONT OAK 230872 39
230873 2001-03-31 19:00:00 -12 347 ELP PHX 230873 16
230874 2001-03-31 19:00:00 -2 471 MSY BNA 230874 35
230875 2001-03-31 19:00:00 -6 777 MDW BDL 230875 33
230876 2001-03-31 19:00:00 -8 337 LAX OAK 230876 27
230877 2001-03-31 19:00:00 -9 441 MAF HOU 230877 30
230878 2001-03-31 19:00:00 0 321 BHM MSY 230878 5
230879 2001-03-31 19:00:00 3 314 BWI CLE 230879 10
230880 2001-03-31 19:01:00 27 843 SAT PHX 230880 47
230881 2001-03-31 19:05:00 -10 1140 LAS MCI 230881 26
230882 2001-03-31 19:05:00 -10 491 BNA MCI 230882 6
230883 2001-03-31 19:05:00 -15 663 JAX BWI 230883 25
230884 2001-03-31 19:05:00 -2 233 HRL SAT 230884 20
230885 2001-03-31 19:05:00 -3 251 STL MDW 230885 55
230886 2001-03-31 19:05:00 -5 1501 LAS MSY 230886 26
230887 2001-03-31 19:05:00 15 180 OAK RNO 230887 36
230888 2001-03-31 19:05:00 5 197 FLL TPA 230888 17
230889 2001-03-31 19:05:00 80 587 JAN MCO 230889 24
230890 2001-03-31 19:07:00 22 550 MCO MSY 230890 32
230891 2001-03-31 19:10:00 -10 803 ISP BNA 230891 23
230892 2001-03-31 19:10:00 -13 371 SNA OAK 230892 54
230893 2001-03-31 19:10:00 -4 373 SMF LAX 230893 53
230894 2001-03-31 19:10:00 -5 998 BWI MSY 230894 10
230895 2001-03-31 19:10:00 -7 872 PHX AUS 230895 42
230896 2001-03-31 19:10:00 0 308 SJC LAX 230896 51
230897 2001-03-31 19:10:00 0 444 PDX RNO 230897 41
230898 2001-03-31 19:10:00 10 337 OAK LAX 230898 36
230899 2001-03-31 19:10:00 4 325 OAK BUR 230899 36
230900 2001-03-31 19:10:00 7 883 BWI PBI 230900 10
230901 2001-03-31 19:11:00 39 174 TPA PBI 230901 56
230902 2001-03-31 19:11:00 8 407 OAK LAS 230902 36
230903 2001-03-31 19:14:00 5 829 TPA CMH 230903 56
230904 2001-03-31 19:15:00 -11 1262 STL PHX 230904 55
230905 2001-03-31 19:15:00 -25 972 MCO ISP 230905 32
230906 2001-03-31 19:15:00 -29 1213 SLC HOU 230906 52
230907 2001-03-31 19:15:00 -3 1246 BWI HOU 230907 10
230908 2001-03-31 19:15:00 -3 303 MSY HOU 230908 35
230909 2001-03-31 19:15:00 -7 251 MDW STL 230909 33
230910 2001-03-31 19:15:00 5 323 BHM SDF 230910 5
230911 2001-03-31 19:20:00 -10 389 ONT SMF 230911 39
230912 2001-03-31 19:20:00 -12 293 LBB DAL 230912 28
230913 2001-03-31 19:20:00 -5 276 HOU HRL 230913 19
230914 2001-03-31 19:20:00 -8 417 SAN SJC 230914 46
230915 2001-03-31 19:20:00 -8 993 AUS MCO 230915 3
230916 2001-03-31 19:22:00 14 687 HOU STL 230916 19
230917 2001-03-31 19:25:00 -3 256 LAS PHX 230917 26
230918 2001-03-31 19:25:00 0 325 ONT PHX 230918 39
230919 2001-03-31 19:25:00 0 405 MDW MCI 230919 33
230920 2001-03-31 19:25:00 0 758 LAS AMA 230920 26
230921 2001-03-31 19:25:00 40 451 LAX TUS 230921 27
230922 2001-03-31 19:27:00 3 148 AUS HOU 230922 3
230923 2001-03-31 19:29:00 9 358 BUR SMF 230923 9
230924 2001-03-31 19:30:00 -10 1236 MCI MHT 230924 31
230925 2001-03-31 19:30:00 -10 223 BUR LAS 230925 9
230926 2001-03-31 19:30:00 -12 368 SLC LAS 230926 52
230927 2001-03-31 19:30:00 -12 588 SLC OAK 230927 52
230928 2001-03-31 19:30:00 -17 697 SJC SEA 230928 51
230929 2001-03-31 19:30:00 -23 647 PHX SMF 230929 42
230930 2001-03-31 19:30:00 -5 236 LAS LAX 230930 26
230931 2001-03-31 19:30:00 -5 258 LAS SAN 230931 26
230932 2001-03-31 19:30:00 -5 616 BNA MCO 230932 6
230933 2001-03-31 19:30:00 -7 1090 LAS AUS 230933 26
230934 2001-03-31 19:30:00 -8 967 MCI BWI 230934 31
230935 2001-03-31 19:30:00 70 737 BWI STL 230935 10
230936 2001-03-31 19:31:00 24 296 SJC BUR 230936 51
230937 2001-03-31 19:35:00 -1 793 BNA FLL 230937 6
230938 2001-03-31 19:35:00 -15 365 TUS LAS 230938 58
230939 2001-03-31 19:35:00 -5 395 BNA MDW 230939 6
230940 2001-03-31 19:35:00 -5 444 RNO PDX 230940 45
230941 2001-03-31 19:35:00 -6 373 LAX SMF 230941 27
230942 2001-03-31 19:35:00 0 256 PHX LAS 230942 42
230943 2001-03-31 19:35:00 0 937 HOU MDW 230943 19
230944 2001-03-31 19:35:00 14 405 MCI MDW 230944 31
230945 2001-03-31 19:35:00 2 318 JAX FLL 230945 25
230946 2001-03-31 19:37:00 -6 1234 MCI PVD 230946 31
230947 2001-03-31 19:37:00 27 611 BWI MDW 230947 10
230948 2001-03-31 19:37:00 83 314 CLE BWI 230948 11
230949 2001-03-31 19:40:00 -11 605 SEA SMF 230949 49
230950 2001-03-31 19:40:00 -18 1814 IND LAX 230950 22
230951 2001-03-31 19:40:00 -4 189 DAL AUS 230951 14
230952 2001-03-31 19:40:00 -6 333 ONT SJC 230952 39
230953 2001-03-31 19:40:00 -8 108 ISP PVD 230953 23
230954 2001-03-31 19:40:00 10 239 HOU DAL 230954 19
230955 2001-03-31 19:40:00 5 308 LAX SJC 230955 27
230956 2001-03-31 19:41:00 -3 612 BNA TPA 230956 6
230957 2001-03-31 19:42:00 30 677 ABQ LAX 230957 0
230958 2001-03-31 19:44:00 0 276 HRL HOU 230958 20
230959 2001-03-31 19:45:00 -3 1489 MCI OAK 230959 31
230960 2001-03-31 19:45:00 0 358 SMF BUR 230960 53
230961 2001-03-31 19:45:00 0 446 OAK SAN 230961 36
230962 2001-03-31 19:45:00 72 1481 MCI PDX 230962 31
230963 2001-03-31 19:49:00 28 377 BWI MHT 230963 10
230964 2001-03-31 19:50:00 -4 303 HOU MSY 230964 19
230965 2001-03-31 19:50:00 -4 333 SJC ONT 230965 51
230966 2001-03-31 19:50:00 -7 479 PDX SMF 230966 41
230967 2001-03-31 19:50:00 15 177 BNA BHM 230967 6
230968 2001-03-31 19:50:00 60 236 LAX LAS 230968 27
230969 2001-03-31 19:52:00 72 189 AUS DAL 230969 3
230970 2001-03-31 19:53:00 -3 223 LAS BUR 230970 26
230971 2001-03-31 19:53:00 22 389 SMF ONT 230971 53
230972 2001-03-31 19:55:00 -3 1363 MCI LAX 230972 31
230973 2001-03-31 19:55:00 17 342 SNA SJC 230973 54
230974 2001-03-31 19:58:00 0 180 RNO OAK 230974 45
230975 2001-03-31 19:59:00 20 370 PHX LAX 230975 42
230976 2001-03-31 19:59:00 63 255 BWI RDU 230976 10
230977 2001-03-31 20:00:00 -10 328 ABQ PHX 230977 0
230978 2001-03-31 20:00:00 -10 337 LAX OAK 230978 27
230979 2001-03-31 20:00:00 -10 347 ELP PHX 230979 16
230980 2001-03-31 20:00:00 -11 229 MDW DTW 230980 33
230981 2001-03-31 20:00:00 -12 271 SDF MDW 230981 48
230982 2001-03-31 20:00:00 -2 1093 ISP FLL 230982 23
230983 2001-03-31 20:00:00 -7 337 OAK LAX 230983 36
230984 2001-03-31 20:00:00 152 255 RDU BWI 230984 44
230985 2001-03-31 20:04:00 -5 239 DAL HOU 230985 14
230986 2001-03-31 20:05:00 -12 621 PHX SJC 230986 42
230987 2001-03-31 20:05:00 -5 361 OAK ONT 230987 36
230988 2001-03-31 20:05:00 -8 368 LAS SLC 230988 26
230989 2001-03-31 20:05:00 0 787 MCO BWI 230989 32
230990 2001-03-31 20:05:00 108 288 BWI ALB 230990 10
230991 2001-03-31 20:05:00 31 1444 PHX MDW 230991 42
230992 2001-03-31 20:05:00 7 142 MCO PBI 230992 32
230993 2001-03-31 20:09:00 -6 822 BNA SAT 230993 6
230994 2001-03-31 20:10:00 100 328 PHX ABQ 230994 42
230995 2001-03-31 20:10:00 28 1166 FLL MDW 230995 17
230996 2001-03-31 20:13:00 42 174 PBI TPA 230996 40
230997 2001-03-31 20:15:00 -10 365 LAS TUS 230997 26
230998 2001-03-31 20:15:00 -13 880 MCO STL 230998 32
230999 2001-03-31 20:15:00 -7 248 SAT DAL 230999 47
231000 2001-03-31 20:15:00 0 344 PDX BOI 231000 41
231001 2001-03-31 20:15:00 10 180 JAX TPA 231001 25
231002 2001-03-31 20:20:00 -1 564 RNO SEA 231002 45
231003 2001-03-31 20:20:00 -15 866 LAS SEA 231003 26
231004 2001-03-31 20:20:00 -5 283 BWI BDL 231004 10
231005 2001-03-31 20:20:00 -5 718 SDF MCO 231005 48
231006 2001-03-31 20:20:00 0 178 MCO FLL 231006 32
231007 2001-03-31 20:20:00 170 342 STL OMA 231007 55
231008 2001-03-31 20:25:00 -6 223 LAS BUR 231008 26
231009 2001-03-31 20:25:00 -9 325 PHX ONT 231009 42
231010 2001-03-31 20:25:00 7 308 LAX SJC 231010 27
231011 2001-03-31 20:28:00 50 304 SAN PHX 231011 46
231012 2001-03-31 20:29:00 5 256 PHX LAS 231012 42
231013 2001-03-31 20:30:00 -10 1048 MCI TPA 231013 31
231014 2001-03-31 20:30:00 -11 938 BNA MHT 231014 6
231015 2001-03-31 20:30:00 -5 279 PDX GEG 231015 41
231016 2001-03-31 20:30:00 -5 370 PHX LAX 231016 42
231017 2001-03-31 20:30:00 -6 843 PHX SAT 231017 42
231018 2001-03-31 20:30:00 -8 546 SLC GEG 231018 52
231019 2001-03-31 20:30:00 10 446 SAN OAK 231019 46
231020 2001-03-31 20:30:00 10 663 BWI JAX 231020 10
231021 2001-03-31 20:30:00 60 407 LAS OAK 231021 26
231022 2001-03-31 20:33:00 0 307 CLE MDW 231022 11
231023 2001-03-31 20:35:00 -10 281 BUF BWI 231023 8
231024 2001-03-31 20:35:00 -5 397 SMF LAS 231024 53
231025 2001-03-31 20:35:00 0 405 MCI MDW 231025 31
231026 2001-03-31 20:35:00 56 587 RDU TPA 231026 44
231027 2001-03-31 20:35:00 9 838 IND TPA 231027 22
231028 2001-03-31 20:40:00 -17 1142 MCO MHT 231028 32
231029 2001-03-31 20:40:00 -5 677 HOU ELP 231029 19
231030 2001-03-31 20:40:00 -7 303 HOU MSY 231030 19
231031 2001-03-31 20:40:00 5 590 LAX SLC 231031 27
231032 2001-03-31 20:44:00 19 325 BUR OAK 231032 9
231033 2001-03-31 20:45:00 -18 588 OAK SLC 231033 36
231034 2001-03-31 20:45:00 -2 417 SJC SAN 231034 51
231035 2001-03-31 20:50:00 -10 197 LAS ONT 231035 26
231036 2001-03-31 20:50:00 0 236 LAX LAS 231036 27
231037 2001-03-31 20:50:00 2 612 BNA TPA 231037 6
231038 2001-03-31 20:50:00 5 373 SMF LAX 231038 53
231039 2001-03-31 20:52:00 45 487 LAS ABQ 231039 26
231040 2001-03-31 20:55:00 -15 333 ONT SJC 231040 39
231041 2001-03-31 20:55:00 35 345 LAS RNO 231041 26
231042 2001-03-31 20:57:00 51 787 BWI MCO 231042 10
231043 2001-03-31 21:00:00 -1 337 LAX OAK 231043 27
231044 2001-03-31 21:00:00 -3 239 HOU DAL 231044 19
231045 2001-03-31 21:00:00 -3 370 LAX PHX 231045 27
231046 2001-03-31 21:00:00 0 389 SMF ONT 231046 53
231047 2001-03-31 21:00:00 0 446 OAK SAN 231047 36
231048 2001-03-31 21:00:00 14 345 RNO LAS 231048 45
231049 2001-03-31 21:02:00 26 303 MSY HOU 231049 35
231050 2001-03-31 21:05:00 -1 451 MCI IND 231050 31
231051 2001-03-31 21:05:00 -10 229 MDW DTW 231051 33
231052 2001-03-31 21:05:00 -5 318 FLL JAX 231052 17
231053 2001-03-31 21:05:00 -7 188 SJC RNO 231053 51
231054 2001-03-31 21:05:00 -8 833 PHX OKC 231054 42
231055 2001-03-31 21:10:00 0 197 TPA FLL 231055 56
231056 2001-03-31 21:10:00 53 256 LAS PHX 231056 26
231057 2001-03-31 21:15:00 -5 325 PHX ONT 231057 42
231058 2001-03-31 21:15:00 -8 291 SLC BOI 231058 52
231059 2001-03-31 21:15:00 68 495 BWI SDF 231059 10
231060 2001-03-31 21:15:00 8 569 SJC PDX 231060 51
231061 2001-03-31 21:20:00 -1 333 SJC ONT 231061 51
231062 2001-03-31 21:20:00 -2 197 ONT LAS 231062 39
231063 2001-03-31 21:22:00 110 1111 BDL TPA 231063 4
231064 2001-03-31 21:24:00 2 281 BWI BUF 231064 10
231065 2001-03-31 21:25:00 10 246 ELP MAF 231065 16
231066 2001-03-31 21:29:00 20 328 BWI PVD 231066 10
231067 2001-03-31 21:30:00 -11 495 BWI SDF 231067 10
231068 2001-03-31 21:30:00 30 174 TPA PBI 231068 56
231069 2001-03-31 21:30:00 8 487 TPA MSY 231069 56
231070 2001-03-31 21:30:00 80 515 IND BWI 231070 22
231071 2001-03-31 21:33:00 64 328 BWI PVD 231071 10
231072 2001-03-31 21:35:00 -7 284 CMH MDW 231072 12
231073 2001-03-31 21:35:00 153 342 OMA STL 231073 38
231074 2001-03-31 21:45:00 -5 588 BNA BWI 231074 6
231075 2001-03-31 21:51:00 70 550 MCO MSY 231075 32
231076 2001-03-31 21:55:00 -16 550 MSY MCO 231076 35
231077 2001-03-31 22:00:00 -7 303 HOU MSY 231077 19
231078 2001-03-31 22:10:00 -7 423 OMA MDW 231078 38
231079 2001-03-31 22:30:00 -8 303 HOU MSY 231079 19
231080 2001-03-31 22:37:00 106 443 BNA RDU 231080 6
231081 2001-03-31 22:48:00 125 880 STL MCO 231081 55
231082 2001-03-31 22:57:00 29 303 MSY HOU 231082 35

231083 rows × 7 columns

In [22]:
from IPython.display import Javascript
# Bind data to window to allow javascript to access it
Javascript("""
           window.flights={};
           """.format(df2.to_json()))
Out[22]:
In [23]:
%%javascript
// Load in the required javascripts
require.config({
    paths: {
        d3: 'https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.8/d3.min',
        crossfilter: 'https://cdnjs.cloudflare.com/ajax/libs/crossfilter/1.3.12/crossfilter.min'
    },
      shim: {
    'crossfilter': {
      deps: [],
      exports: 'crossfilter'
    }
  } 
});
In [24]:
%%javascript
// function which converts 
function convertPlotData(data){
  var convertedData = [];
  for(var i in data[Object.keys(data)[0]]){
    var convertedDatum = {};
    for(var key in data){
      convertedDatum[key] = data[key][i];
    }
    convertedData.push(convertedDatum);
  }
  return convertedData;
}

window.convertPlotData = convertPlotData;
In [25]:
%%javascript
// Test that d3 and crossfilter were imported correctly and that the flight data can be accesed by javascript
// Check console to see results (right click and inspect element)
require(['d3','crossfilter'], function(d3,crossfilter){
    console.log('Tets d3')
    console.log(d3);
    console.log('Test crossfilter')
    console.log(crossfilter)
    console.log('Test data access')
    console.log(flights)
})
In [26]:
# Import style sheet to change the look and feel of plots
from IPython.core.display import HTML
#HTML("""<link href="flightdata.css" rel="stylesheet">""")
HTML("""<style>
@import url(http://fonts.googleapis.com/css?family=Yanone+Kaffeesatz:400,700);

#body > p {
  line-height: 1.5em;
  width: 640px;
  text-rendering: optimizeLegibility;
}

#charts {
  padding: 10px 0;
}

.chart {
  display: inline-block;
  height: 151px;
  margin-bottom: 20px;
}

.reset {
  padding-left: 1em;
  font-size: smaller;
  color: #ccc;
}

.background.bar {
  fill: #ccc;
}

.foreground.bar {
  fill: steelblue;
}

.axis path, .axis line {
  fill: none;
  stroke: #000;
  shape-rendering: crispEdges;
}

.axis text {
  font: 10px sans-serif;
}

.brush rect.extent {
  fill: steelblue;
  fill-opacity: .125;
}

.brush .resize path {
  fill: #eee;
  stroke: #666;
}

#hour-chart {
  width: 260px;
}

#delay-chart {
  width: 230px;
}

#distance-chart {
  width: 420px;
}

#date-chart {
  width: 920px;
}

#flight-list {
  min-height: 1024px;
}

#flight-list .date,
#flight-list .day {
  margin-bottom: .4em;
}

#flight-list .flight {
  line-height: 1.5em;
  background: #eee;
  width: 640px;
  margin-bottom: 1px;
}

#flight-list .time {
  color: #999;
}

#flight-list .flight div {
  display: inline-block;
  width: 100px;
}

#flight-list div.distance,
#flight-list div.delay {
  width: 160px;
  padding-right: 10px;
  text-align: right;
}

#flight-list .early {
  color: green;
}

aside {
  position: absolute;
  left: 740px;
  font-size: smaller;
  width: 220px;
}

</style>
""")
Out[26]:
In [27]:
# Create charts
HTML("""<div id="charts">
  <div id="hour-chart" class="chart">
    <div class="title">Time of Day</div>
  </div>
  <div id="delay-chart" class="chart">
    <div class="title">Arrival Delay (min.)</div>
  </div>
  <div id="distance-chart" class="chart">
    <div class="title">Distance (mi.)</div>
  </div>
  <div id="date-chart" class="chart">
    <div class="title">Date</div>
  </div>
  <div id="flight-chart" class="chart">
    <div class="title">Flight Code</div>
  </div>
</div>

<aside id="totals"><span id="active">-</span> of <span id="total">-</span> flights selected.</aside>

<div id="lists">
  <div id="flight-list" class="list"></div>
</div>


""")
Out[27]:
Time of Day
Arrival Delay (min.)
Distance (mi.)
Date
Flight Code
In [28]:
%%javascript
// javascript forked form square.github.io/crossfilter
require(['d3','crossfilter'], function(d3,crossfilter){
  var flights = convertPlotData(window.flights);
  // Various formatters.
  var formatNumber = d3.format(",d"),
      formatChange = d3.format("+,d"),
      formatDate = d3.time.format("%B %d, %Y"),
      formatTime = d3.time.format("%I:%M %p");

  // A nest operator, for grouping the flight list.
  var nestByDate = d3.nest()
      .key(function(d) { return d3.time.day(d.date); });

  // A little coercion, since the CSV is untyped.
  flights.forEach(function(d, i) {
    d.index = i;
    d.date = parseDate(d.date);
    d.delay = +d.delay;
    d.distance = +d.distance;
    d.test = d.test
  });

  // Create the crossfilter for the relevant dimensions and groups.
  var flight = crossfilter(flights),
      all = flight.groupAll(),
      date = flight.dimension(function(d) { return d.date; }),
      dates = date.group(d3.time.day),
      hour = flight.dimension(function(d) { return d.date.getHours() + d.date.getMinutes() / 60; }),
      hours = hour.group(Math.floor),
      delay = flight.dimension(function(d) { return Math.max(-60, Math.min(149, d.delay)); }),
      delays = delay.group(function(d) { return Math.floor(d / 10) * 10; }),
      distance = flight.dimension(function(d) { return Math.min(1999, d.distance); }),
      distances = distance.group(function(d) { return Math.floor(d / 50) * 50; }),
      test = flight.dimension(function(d) { return  d.test; }),
      tests = test.group(function(d) { return d; });
  
  var charts = [

    barChart()
        .dimension(hour)
        .group(hours)
      .x(d3.scale.linear()
        .domain([0, 24])
        .rangeRound([0, 10 * 24])),

    barChart()
        .dimension(delay)
        .group(delays)
      .x(d3.scale.linear()
        .domain([-60, 150])
        .rangeRound([0, 10 * 21])),

    barChart()
        .dimension(distance)
        .group(distances)
      .x(d3.scale.linear()
        .domain([0, 2000])
        .rangeRound([0, 10 * 40])),

    barChart()
        .dimension(date)
        .group(dates)
        .round(d3.time.day.round)
      .x(d3.time.scale()
        .domain([new Date(2001, 0, 1), new Date(2001, 3, 1)])
        .rangeRound([0, 10 * 90]))
        .filter([new Date(2001, 1, 1), new Date(2001, 2, 1)]),
     
    barChart()
        .dimension(test)
        .group(tests)
      .x(d3.scale.ordinal()
        .domain(['ABQ','AUS','BDL','BHM','BNA','BOI','BUR','BWI','CLE','DAL',
 'DTW','ELP','FLL','GEG','HOU','IND','ISP','JAX','LAS','LAX','LBB','MCI','MCO','MDW','MHT','MSY',
 'OAK','OKC','OMA','ONT','PDX','PHX','PVD','RDU','RNO','SAN','SDF','SEA',
 'SFO','SJC','SLC','SMF','STL','TPA','TUL'])
        .rangeBands([0,
 1,
 2,
 3,
 4,
 5,
 6,
 7,
 8,
 9,
 10,
 11,
 12,
 13,
 14,
 15,
 16,
 17,
 18,
 19,
 20,
 21,
 22,
 23,
 24,
 25,
 26,
 27,
 28,
 29,
 30,
 31,
 32,
 33,
 34,
 35,
 36,
 37,
 38,
 39,
 40,
 41,
 42,
 43,
 44]))
      
  ]
  
  //temp = d3.select('#gender-chart').selectAll('.axis').selectAll('text')[0][0]
  //d3.select(temp).text('Male').attr('transform', 'rotate(-45) translate(-12,-2)');
       
//    d3.select('#flight-chart').axis()
  //      .scale(x).tickValues(["Year 1", "year 2"])

  // Given our array of charts, which we assume are in the same order as the
  // .chart elements in the DOM, bind the charts to the DOM and render them.
  // We also listen to the chart's brush events to update the display.
  var chart = d3.selectAll(".chart")
      .data(charts)
      .each(function(chart) { chart.on("brush", renderAll).on("brushend", renderAll); });

  // Render the initial lists.
  var list = d3.selectAll(".list")
      .data([flightList]);

  // Render the total.
  d3.selectAll("#total")
      .text(formatNumber(flight.size()));

  renderAll();

  // Renders the specified chart or list.
  function render(method) {
    d3.select(this).call(method);
  }

  // Whenever the brush moves, re-rendering everything.
  function renderAll() {
    chart.each(render);
    list.each(render);
    d3.select("#active").text(formatNumber(all.value()));
  }

  // Convert Unix Time to d3
  function parseDate(d) {
    return new Date(d)}

  window.filter = function(filters) {
    filters.forEach(function(d, i) { charts[i].filter(d); });
    renderAll();
  };

  window.reset = function(i) {
    charts[i].filter(null);
    renderAll();
  };

  function flightList(div) {
    var flightsByDate = nestByDate.entries(date.top(40));

    div.each(function() {
      var date = d3.select(this).selectAll(".date")
          .data(flightsByDate, function(d) { return d.key; });

      date.enter().append("div")
          .attr("class", "date")
        .append("div")
          .attr("class", "day")
          .text(function(d) { return formatDate(d.values[0].date); });

      date.exit().remove();

      var flight = date.order().selectAll(".flight")
          .data(function(d) { return d.values; }, function(d) { return d.index; });

      var flightEnter = flight.enter().append("div")
          .attr("class", "flight");

      flightEnter.append("div")
          .attr("class", "time")
          .text(function(d) { return formatTime(d.date); });

      flightEnter.append("div")
          .attr("class", "origin")
          .text(function(d) { return d.origin; });

      flightEnter.append("div")
          .attr("class", "destination")
          .text(function(d) { return d.destination; });

      flightEnter.append("div")
          .attr("class", "distance")
          .text(function(d) { return formatNumber(d.distance) + " mi."; });

      flightEnter.append("div")
          .attr("class", "delay")
          .classed("early", function(d) { return d.delay < 0; })
          .text(function(d) { return formatChange(d.delay) + " min."; });

      flight.exit().remove();

      flight.order();
    });
  }

    
    
    
    
    
    
/// Don't touch stuff below here.    
    
  function barChart() {
    if (!barChart.id) barChart.id = 0;

    var margin = {top: 10, right: 10, bottom: 20, left: 10},
        x,
        y = d3.scale.linear().range([100, 0]),
        id = barChart.id++,
        axis = d3.svg.axis().orient("bottom"),
        brush = d3.svg.brush(),
        brushDirty,
        dimension,
        group,
        round;
      // add y axis here like axis

    function chart(div) {
      var width = x.range()[1],
          height = y.range()[0];

      y.domain([0, group.top(1)[0].value]);

      div.each(function() {
        var div = d3.select(this),
            g = div.select("g");

        // Create the skeletal chart.
        if (g.empty()) {
          div.select(".title").append("a")
              .attr("href", "javascript:reset(" + id + ")")
              .attr("class", "reset")
              .text("reset")
              .style("display", "none");

          g = div.append("svg")
              .attr("width", width + margin.left + margin.right)
              .attr("height", height + margin.top + margin.bottom)
            .append("g")
              .attr("transform", "translate(" + margin.left + "," + margin.top + ")");

          g.append("clipPath")
              .attr("id", "clip-" + id)
            .append("rect")
              .attr("width", width)
              .attr("height", height);

          g.selectAll(".bar")
              .data(["background", "foreground"])
            .enter().append("path")
              .attr("class", function(d) { return d + " bar"; })
              .datum(group.all());

          g.selectAll(".foreground.bar")
              .attr("clip-path", "url(#clip-" + id + ")");

          g.append("g")
              .attr("class", "axis")
              .attr("transform", "translate(0," + height + ")")
              .call(axis);
            
        //add in y axis here

          // Initialize the brush component with pretty resize handles.
          var gBrush = g.append("g").attr("class", "brush").call(brush);
          gBrush.selectAll("rect").attr("height", height);
          gBrush.selectAll(".resize").append("path").attr("d", resizePath);
        }

        // Only redraw the brush if set externally.
        if (brushDirty) {
          brushDirty = false;
          g.selectAll(".brush").call(brush);
          div.select(".title a").style("display", brush.empty() ? "none" : null);
          if (brush.empty()) {
            g.selectAll("#clip-" + id + " rect")
                .attr("x", 0)
                .attr("width", width);
          } else {
            var extent = brush.extent();
            g.selectAll("#clip-" + id + " rect")
                .attr("x", x(extent[0]))
                .attr("width", x(extent[1]) - x(extent[0]));
          }
        }

        g.selectAll(".bar").attr("d", barPath);
      });

      function barPath(groups) {
        var path = [],
            i = -1,
            n = groups.length,
            d;
        while (++i < n) {
          d = groups[i];
          path.push("M", x(d.key), ",", height, "V", y(d.value), "h9V", height);
        }
        return path.join("");
      }

      function resizePath(d) {
        var e = +(d == "e"),
            x = e ? 1 : -1,
            y = height / 3;
        return "M" + (.5 * x) + "," + y
            + "A6,6 0 0 " + e + " " + (6.5 * x) + "," + (y + 6)
            + "V" + (2 * y - 6)
            + "A6,6 0 0 " + e + " " + (.5 * x) + "," + (2 * y)
            + "Z"
            + "M" + (2.5 * x) + "," + (y + 8)
            + "V" + (2 * y - 8)
            + "M" + (4.5 * x) + "," + (y + 8)
            + "V" + (2 * y - 8);
      }
    }

    brush.on("brushstart.chart", function() {
      var div = d3.select(this.parentNode.parentNode.parentNode);
      div.select(".title a").style("display", null);
    });

    brush.on("brush.chart", function() {
      var g = d3.select(this.parentNode),
          extent = brush.extent();
      if (round) g.select(".brush")
          .call(brush.extent(extent = extent.map(round)))
        .selectAll(".resize")
          .style("display", null);
      g.select("#clip-" + id + " rect")
          .attr("x", x(extent[0]))
          .attr("width", x(extent[1]) - x(extent[0]));
      dimension.filterRange(extent);
    });

    brush.on("brushend.chart", function() {
      if (brush.empty()) {
        var div = d3.select(this.parentNode.parentNode.parentNode);
        div.select(".title a").style("display", "none");
        div.select("#clip-" + id + " rect").attr("x", null).attr("width", "100%");
        dimension.filterAll();
      }
    });

    chart.margin = function(_) {
      if (!arguments.length) return margin;
      margin = _;
      return chart;
    };

    chart.x = function(_) {
      if (!arguments.length) return x;
      x = _;
      axis.scale(x);
      brush.x(x);
      return chart;
    };

    chart.y = function(_) {
      if (!arguments.length) return y;
      y = _;
      return chart;
    };

    chart.dimension = function(_) {
      if (!arguments.length) return dimension;
      dimension = _;
      return chart;
    };

    chart.filter = function(_) {
      if (_) {
        brush.extent(_);
        dimension.filterRange(_);
      } else {
        brush.clear();
        dimension.filterAll();
      }
      brushDirty = true;
      return chart;
    };

    chart.group = function(_) {
      if (!arguments.length) return group;
      group = _;
      return chart;
    };

    chart.round = function(_) {
      if (!arguments.length) return round;
      round = _;
      return chart;
    };

    return d3.rebind(chart, brush, "on");
  }
});
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]:
 
In [ ]: